<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>
<HEAD>
   <TITLE>class  SG_EXPORT osg::LineSegment</TITLE>
   <META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">

<H2>class  SG_EXPORT <A HREF="#DOC.DOCU">osg::LineSegment</A></H2></H2><BLOCKQUOTE>LineSegment class for representing a line segment</BLOCKQUOTE>
<HR>

<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=65>
<param name=classes value="CReferenced,MReferenced.html,CLineSegment,MLineSegment.html">
<param name=before value="M,M">
<param name=after value="Md_,M">
<param name=indent value="0,1">
<param name=arrowdir value="down">
</APPLET>
<HR>

<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.65.1">LineSegment</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.65.2">LineSegment</A></B>(const <!1><A HREF="LineSegment.html#DOC.2.65.2">LineSegment</A>&amp; seg)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.65.3">LineSegment</A></B>(const <!1><A HREF="Vec3.html">Vec3</A>&amp; <!1><A HREF="ImpostorSprite.html#DOC.2.60.24">s</A>, const <!1><A HREF="Vec3.html">Vec3</A>&amp; e)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="LineSegment.html">LineSegment</A>&amp; <B><A HREF="#DOC.2.65.4">operator = </A></B>(const <!1><A HREF="LineSegment.html">LineSegment</A>&amp; seg)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   void <B><A HREF="#DOC.2.65.5">set</A></B>(const <!1><A HREF="Vec3.html">Vec3</A>&amp; <!1><A HREF="ImpostorSprite.html#DOC.2.60.24">s</A>, const <!1><A HREF="Vec3.html">Vec3</A>&amp; e)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   <!1><A HREF="Vec3.html">Vec3</A>&amp; <B><A HREF="#DOC.2.65.6">start</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   const <!1><A HREF="Vec3.html">Vec3</A>&amp; <B><A HREF="#DOC.2.65.7">start</A></B>() const 
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   <!1><A HREF="Vec3.html">Vec3</A>&amp; <B><A HREF="#DOC.2.65.8">end</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   const <!1><A HREF="Vec3.html">Vec3</A>&amp; <B><A HREF="#DOC.2.65.9">end</A></B>() const 
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   const bool <B><A HREF="#DOC.2.65.10">valid</A></B>() const 
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>const bool <B><A HREF="#DOC.2.65.11">intersect</A></B>(const <!1><A HREF="BoundingBox.html">BoundingBox</A>&amp; bb) const 
<DD><I>return true if segment intersects BoundingBox</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>const bool <B><A HREF="#DOC.2.65.12">intersect</A></B>(const <!1><A HREF="BoundingBox.html">BoundingBox</A>&amp; bb, float&amp; r1, float&amp; r2) const 
<DD><I>return true if segment intersects BoundingBox and return the intersection ratio's</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>const bool <B><A HREF="#DOC.2.65.13">intersect</A></B>(const <!1><A HREF="BoundingSphere.html">BoundingSphere</A>&amp; bs) const 
<DD><I>return true if segment intersects BoundingSphere</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>const bool <B><A HREF="#DOC.2.65.14">intersect</A></B>(const <!1><A HREF="BoundingSphere.html">BoundingSphere</A>&amp; bs, float&amp; r1, float&amp; r2) const 
<DD><I>return true if segment intersects BoundingSphere and return the intersection ratio's</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>const bool <B><A HREF="#DOC.2.65.15">intersect</A></B>(const <!1><A HREF="Vec3.html">Vec3</A>&amp; v1, const <!1><A HREF="Vec3.html">Vec3</A>&amp; v2, const <!1><A HREF="Vec3.html">Vec3</A>&amp; v3, float&amp; <!1><A HREF="UByte4.html#DOC.2.133.12">r</A>)
<DD><I>return true if segment intersects triangle and set ratio long segment.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   void <B><A HREF="#DOC.2.65.16">mult</A></B>(const <!1><A HREF="LineSegment.html">LineSegment</A>&amp; seg, const <!1><A HREF="Matrix.html">Matrix</A>&amp; m)
<DD><I>post multiply a segment by matrix</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline   void <B><A HREF="#DOC.2.65.17">mult</A></B>(const <!1><A HREF="Matrix.html">Matrix</A>&amp; m, const <!1><A HREF="LineSegment.html">LineSegment</A>&amp; seg)
<DD><I>pre multiply a segment by matrix</I>
</DL></P>

<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Vec3.html">Vec3</A> <B><A HREF="#DOC.2.65.20">_s</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Vec3.html">Vec3</A> <B><A HREF="#DOC.2.65.21">_e</A></B>
</DL></P>

<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual   <B><A HREF="#DOC.2.65.18">~LineSegment</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>static   const bool <B><A HREF="#DOC.2.65.19">intersectAndClip</A></B>(<!1><A HREF="Vec3.html">Vec3</A>&amp; <!1><A HREF="ImpostorSprite.html#DOC.2.60.24">s</A>, <!1><A HREF="Vec3.html">Vec3</A>&amp; e, const <!1><A HREF="BoundingBox.html">BoundingBox</A>&amp; bb)
</DL></P>

</DL>
<HR><H3>Inherited from <A HREF="Referenced.html">Referenced</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>inline   void <B>ref</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   void <B>unref</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   void <B>unref_nodelete</B>() const 
<DT>
<IMG ALT="o" SRC=icon2.gif>inline   const int <B>referenceCount</B>() const 
</DL></P>

<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>mutable int <B>_refCount</B>
</DL></P>

</DL>

<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>LineSegment class for representing a line segment</BLOCKQUOTE>
<DL>

<A NAME="LineSegment"></A>
<A NAME="DOC.2.65.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> LineSegment()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="LineSegment"></A>
<A NAME="DOC.2.65.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> LineSegment(const <!1><A HREF="LineSegment.html#DOC.2.65.2">LineSegment</A>&amp; seg)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="LineSegment"></A>
<A NAME="DOC.2.65.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> LineSegment(const <!1><A HREF="Vec3.html">Vec3</A>&amp; <!1><A HREF="ImpostorSprite.html#DOC.2.60.24">s</A>, const <!1><A HREF="Vec3.html">Vec3</A>&amp; e)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator = "></A>
<A NAME="DOC.2.65.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="LineSegment.html">LineSegment</A>&amp; operator = (const <!1><A HREF="LineSegment.html">LineSegment</A>&amp; seg)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="set"></A>
<A NAME="DOC.2.65.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   void set(const <!1><A HREF="Vec3.html">Vec3</A>&amp; <!1><A HREF="ImpostorSprite.html#DOC.2.60.24">s</A>, const <!1><A HREF="Vec3.html">Vec3</A>&amp; e)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="start"></A>
<A NAME="DOC.2.65.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   <!1><A HREF="Vec3.html">Vec3</A>&amp; start()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="start"></A>
<A NAME="DOC.2.65.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   const <!1><A HREF="Vec3.html">Vec3</A>&amp; start() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="end"></A>
<A NAME="DOC.2.65.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   <!1><A HREF="Vec3.html">Vec3</A>&amp; end()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="end"></A>
<A NAME="DOC.2.65.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   const <!1><A HREF="Vec3.html">Vec3</A>&amp; end() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="valid"></A>
<A NAME="DOC.2.65.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   const bool valid() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="intersect"></A>
<A NAME="DOC.2.65.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const bool intersect(const <!1><A HREF="BoundingBox.html">BoundingBox</A>&amp; bb) const </B></TT>
<DD>return true if segment intersects BoundingBox
<DL><DT><DD></DL><P>
<A NAME="intersect"></A>
<A NAME="DOC.2.65.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const bool intersect(const <!1><A HREF="BoundingBox.html">BoundingBox</A>&amp; bb, float&amp; r1, float&amp; r2) const </B></TT>
<DD>return true if segment intersects BoundingBox and return the intersection ratio's
<DL><DT><DD></DL><P>
<A NAME="intersect"></A>
<A NAME="DOC.2.65.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const bool intersect(const <!1><A HREF="BoundingSphere.html">BoundingSphere</A>&amp; bs) const </B></TT>
<DD>return true if segment intersects BoundingSphere
<DL><DT><DD></DL><P>
<A NAME="intersect"></A>
<A NAME="DOC.2.65.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const bool intersect(const <!1><A HREF="BoundingSphere.html">BoundingSphere</A>&amp; bs, float&amp; r1, float&amp; r2) const </B></TT>
<DD>return true if segment intersects BoundingSphere and return the intersection ratio's
<DL><DT><DD></DL><P>
<A NAME="intersect"></A>
<A NAME="DOC.2.65.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>const bool intersect(const <!1><A HREF="Vec3.html">Vec3</A>&amp; v1, const <!1><A HREF="Vec3.html">Vec3</A>&amp; v2, const <!1><A HREF="Vec3.html">Vec3</A>&amp; v3, float&amp; <!1><A HREF="UByte4.html#DOC.2.133.12">r</A>)</B></TT>
<DD>return true if segment intersects triangle and set ratio long segment. 
<DL><DT><DD></DL><P>
<A NAME="mult"></A>
<A NAME="DOC.2.65.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   void mult(const <!1><A HREF="LineSegment.html">LineSegment</A>&amp; seg, const <!1><A HREF="Matrix.html">Matrix</A>&amp; m)</B></TT>
<DD>post multiply a segment by matrix
<DL><DT><DD></DL><P>
<A NAME="mult"></A>
<A NAME="DOC.2.65.17"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline   void mult(const <!1><A HREF="Matrix.html">Matrix</A>&amp; m, const <!1><A HREF="LineSegment.html">LineSegment</A>&amp; seg)</B></TT>
<DD>pre multiply a segment by matrix
<DL><DT><DD></DL><P>
<A NAME="~LineSegment"></A>
<A NAME="DOC.2.65.18"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual   ~LineSegment()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="intersectAndClip"></A>
<A NAME="DOC.2.65.19"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>static   const bool intersectAndClip(<!1><A HREF="Vec3.html">Vec3</A>&amp; <!1><A HREF="ImpostorSprite.html#DOC.2.60.24">s</A>, <!1><A HREF="Vec3.html">Vec3</A>&amp; e, const <!1><A HREF="BoundingBox.html">BoundingBox</A>&amp; bb)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_s"></A>
<A NAME="DOC.2.65.20"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Vec3.html">Vec3</A> _s</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_e"></A>
<A NAME="DOC.2.65.21"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Vec3.html">Vec3</A> _e</B></TT>
<DL><DT><DD></DL><P></DL>

<HR><DL><DT><B>This class has no child classes.</B></DL>

<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
<BR>
This page was generated with the help of <A HREF="http://docpp.sourceforge.net">DOC++</A>.
</BODY>
</HTML>
